PIZZA Current compiler version: 0.39d
A substantial companion to Java
Known bugs

Contents
Home
Mirrors
FAQ

Distribution
Support
Documents

Applications
Users

People
Links

  • Closures in inner classes which are themselves nested in methods are not yet supported. Example:
        
         class Outer {
           int f() {
             class Inner() {
               int->int f = fun(int x)-> int { return x + 1; } // not yet supported:
             }
           }
        }
    
  • Pizza will not allow fields of a parameterized type whose type is the type parameter be the left operands of an operator assignment. I.e.
           
      public Pair sum = Pair.Pair (true, 0);
    
      public void add(int x) {
        sum.snd += x;          // will not work
        sum.snd = sum.snd + x; // use this instead
      };

  • The Bit Shift operators in Pizza do not accept a long as the second argument, i.e.:
  •         long i=3; 
            int j=3<<i;

    does not work.

  • Unlike javac, pc will not compile auxiliary classes automatically. You have to indicate explicitly all sourcefiles to be compiled. If there are cyclic dependencies, you have to compile all source files together.



  • Bugs list by Martin Odersky.
    Java is a trademark of Sun Microsystems.

    Comments and bug reports to the Pizza Group, pizza@cis.unisa.edu.au.
    All software and documents on the Pizza site are © Copyright 1996, 1997 by the respective authors (as attributed on each; terms for redistribution are available).